2024年5月にリリースされたSnowflakeの新機能・変更点のまとめ #SnowflakeDB
2024年5月にリリースされたSnowflakeの新機能・変更点のまとめ記事になります。
※注意事項:本記事ではすべての情報についての記述はせず、特筆すべきだと感じた情報だけピックしております。基本的には以下の情報を参考にしておりますので、全ての最新情報を確認したい場合は下記のURLからご確認ください。
Snowflake Notebooks がパブリックプレビュー
こちらはまだリリースノートには載っていませんが、Snowflake Notebooks と呼ばれる、開発用のインターフェイスが Snowsight 上で利用可能となっています。
Snowflake Notebooks では Python と SQL ユーザーのためにインタラクティブでセルベースのプログラミング環境が提供されます。
Notebook では、セルごとに SQL と Python を使用でき、相互に一部の結果を参照することが可能となっています。また Git と連携して管理可能な機能も提供されています。
詳しくは以下の記事で紹介されていますので、ぜひご覧ください。
May 31, 2024 — Snowflake ML Classification Update –— Preview
Snowflake Cortex ML ベース関数 Classification のアップデート
Snowflake Cortex ML ベースの関数における分類について以下の機能がサポートされました。
- タイムスタンプに関する機能
- モデルがタイムスタンプから曜日や月などの特徴を自動的に導出する機能が追加されました。これにより、分類は時間に基づくサイクルを検出し、新しいデータの分類に役立てることができます
- カーディナリティの高い(100以上)ラベルのサポート
May 28, 2024 — ML Functions Release Notes
ML 関数の結果保持をシンプルな SQL で記述可能に
SQL の FROM 句で、予測および 異常検出 のML 関数を直接呼び出すことができるようになりました。ドキュメントからの引用ですが、具体的には以下のようなコマンドを記述できるようになり、モデルの結果をテーブルに保存するための SQL 文を簡略化できるようになりました。
CREATE TABLE my_forecasts AS SELECT * FROM TABLE(model!forecast(forecasting_periods => 7));
May 28, 2024 — Snowflake Data Clean Rooms Release Notes
追加のサポート対象地域
ドキュメントからの引用ですが、以下の地域でも Snowflake Data Clean Rooms が利用できるようになりました。
May 28-30, 2024 — 8.21 Release Notes
Triggered tasks がパブリックプレビュー
Triggered task がパブリックプレビューとなりました。これまで、タスクの実行はスケジュールベースで、例えばストリームと組み合わせて使用し、イベント駆動に近い動作をさせようとする場合、タスク定義時にSCHEDULE = '1 minute'
として最短間隔で実行されるように作成する必要がありました。
Triggered task によって、定義されたストリームに新しいデータがある場合にのみタスクを実行できるようになります。また Triggered task はストリームにデータがあり、タスクの実行をトリガーするまでコンピューティング リソースを使用しないため、コストも抑えられます。
詳細は以下をご参照ください。
UNPIVOT 句が NULL を含む行をサポート
UNPIVOT句でINCLUDE NULLS
オプションによって NULL を含む行を出力できるようになりました。
例えば以下のようなデータがあったとします。
>SELECT * FROM monthly_sales; | empid | dept | jan | feb | mar | april | |-------|------------|-----|------|-----|-------| | 1 | appliances | 100 | NULL | 100 | 50 |
デフォルトではEXCLUDE NULLS
オプションが適用されることになっています。(EXCLUDE NULLS
は省略可能)
SELECT * FROM monthly_sales UNPIVOT EXCLUDE NULLS(sales FOR month IN (jan, feb, mar, april)) ORDER BY empid;
この場合、列リストに指定した値が NULL の場合、対象のレコードは表示されません。
| EMPID | DEPT | MONTH | SALES | |-------|------------|-------|-------| | 1 | appliances | JAN | 100 | | 1 | appliances | MAR | 100 | | 1 | appliances | APRIL | 50 |
INCLUDE NULLS
オプションを使用することで、NULL であっても出力に含むことができるようになりました。
SELECT * FROM monthly_sales UNPIVOT INCLUDE NULLS (sales FOR month IN (jan, feb, mar, april)) ORDER BY empid;
出力
| EMPID | DEPT | MONTH | SALES | |-------|------------|-------|-------| | 1 | appliances | JAN | 100 | | 1 | appliances | FEB | null | | 1 | appliances | MAR | 100 | | 1 | appliances | APRIL | 50 |
Streamlit ライブラリの v1.29.0 および v1.31.1 のサポート
Streamlit in Snowflake の Streamlit ライブラリのバージョンとして 1.29.0 および 1.31.1 がサポートされました。サポートされるバージョンの一覧は以下をご参照ください。
Streamlitライブラリのサポートされているバージョン | Snowflake DOCUMENTATION
May 20-22, 2024 — 8.20 Release Notes
Trust Center がパブリックプレビュー
Snowflake アカウントのセキュリティリスクを評価、監視できる機能である Trust Center がパブリックプレビューとなりました。
現時点ではスキャナーとして「CIS ベンチマーク スキャナー パッケージ」が提供され、こちらに基づく評価指標を定期的に評価・モニタリングすることができます。詳細は以下の記事をご覧ください。
May 17, 2024 — Document AI Release Notes
Document AI がパブリックプレビュー
Snowflake 独自の大規模言語モデル (LLM) である Snowflake Arctic-TILT (Text Image Layout Transformer) が搭載された Document AI がプレビューとなりました。Document AI は、請求書や契約書などのドキュメントからの情報抽出に利用できます。この機能は以下を除く、AWS および Microsoft Azure 商用リージョンのアカウントで利用できます。
- AWS アジアパシフィック (シンガポール)
- AWS アジアパシフィック(大阪)
- AWS EU(パリ)
詳細は以下をご覧ください。
May 16, 2024 — Vector data type and vector similarity functions — General Availability
このリリースでは、一部のリージョンでパブリックプレビューとなっていたベクトルデータの管理と操作が可能な以下の機能が一般提供になりました。この機能により Snowflake 上で RAG の構築を行えるようになります。
- VECTOR データ型
- Snowflake Cortex LLM ベース関数
- Vector similarity functions
RAG については以下の記事でも解説されています。
Snowflake Cortexを使用した簡単かつ安全なRAGからLLMへの推論 | Snowflake BLOG
EMBED_TEXT_768 関数など上記の各機能を使用した RAG の実装はハンズオンも用意されています。
May 14, 2024 — Snowsight Release Notes
Snowsight でのタスクの編集がプレビュー
Snowsight 上で、既存のタスクに関する以下の項目を編集できるようになりました。
- コメント
- スケジュール
- コンピューティングの種類とウェアハウス
- タスクパラメータ
- タスクグラフパラメータ
パラメータとしては下図の項目を編集できます。
May 14, 2024 — Streamlit in Snowflake Release Notes
Streamlit in Snowflake: Support for GCP
これまでプレビュー機能として提供されていた、Google Cloud Platform 上の Streamlit in Snowflake が一般提供となりました。
May 14, 2024 — Snowflake Data Clean Rooms Release Notes
Tracing user activity が一般提供
Snowflake Data Clean Room Web アプリで実行されたすべてのアクティビティは、クリーン ルーム環境に関連付けられた Snowflake アカウントのクエリ履歴に記録されます。この際、管理者はuser_email
クエリ タグを使用することで、どのクリーン ルーム ユーザーがアクションを実行したかを識別できるようになりました。
詳細は以下をご参照ください。
May 13-15, 2024 — 8.19 Release Notes
Serverless alerts がプレビュー
Serverless alerts として、サーバーレス コンピューティング モデルを使用するアラートを構成できるようになりました。具体的には、アラート作成時に WAREHOUSE パラメーターを省略することで、サーバレスアラートとして構成されます。他のサーバーレス機能 (サーバーレス タスクなど) と同様に、アラートに必要なコンピューティング リソースのサイズとスケールは、Snowflake 側で自動的に変更されます。詳細は以下をご参照ください。
Tri-Secret Secure のセルフ登録
Business Critical 以上のエディションで利用可能な Tri-Secret Secure の構成手順の一部をユーザー側で実施できるようになりました。セルフ登録の手順は以下に記載があります。Snowflake アカウントと CMK 間の接続を確認後、サポートに問い合わせることで、登録した CMK に基づく Tri-Secret Secure を使用できるようになります。
May 08, 2024 — Snowflake Notifications Release Notes
通知を送信する際に使用できる SYSTEM$SEND_SNOWFLAKE_NOTIFICATION ストアド プロシージャを利用できるようになりました。SYSTEM$SEND_SNOWFLAKE_NOTIFICATION では複数の通知統合を指定し、異なる複数の宛先にメッセージを送信できます。
Using SYSTEM$SEND_SNOWFLAKE_NOTIFICATION to send notifications to email addresses and cloud provider queues | Snowflake Documentation
SYSTEM$SEND_EMAIL との違いは以下の記事で紹介されていますので、あわせてご参照ください。
May 08, 2024 — New model for vector embedding — Preview
Snowflake Cortex LLM ベース関数の vector embedding 関数で使用できる新しいモデルとして Snowflake によりトレーニングされた snowflake-arctic-embed-m の提供が開始されました。
このモデルについては、以下の記事で詳しく紹介されています。
Snowflake Launches the World’s Best Practical Text-Embedding Model for Retrieval Use Cases | Snowflake BLOG
May 07, 2024 — Cortex LLM Functions — General Availability
すでにパブリックプレビューとして提供されていたリージョンにおいて、以下の Snowflake Cortex LLM ベースの関数が一般提供となりました。
- COMPLETE
- EXTRACT_ANSWER
- SENTIMENT
- SUMMARIZE
- TRANSLATE
これらの LLM 関数を使用することで Snowflake が開発した Snowflake Arctic を含む、大規模言語モデル (LLM) に SQL ベースですぐにアクセスできます。
各 LLM 関数については以下の記事で詳細が紹介されていますので、ぜひご覧ください。
May 03, 2024 — Snowflake Model Registry – General Availability
Snowflake Model Registry は、Snowpark ML で使用できる API の一つで Snowflake 内のモデルとそのメタデータを管理する際に使用できます。
本機能の特徴については以下の記事で詳しく紹介されていますので、あわせてご覧ください。
May 03, 2024 — Aggregation and Projection Policies Release Notes
データ保護に関する集約ポリシーと投影ポリシーが一般提供となりました。集計ポリシーがテーブルに適用されると、そのテーブルに対するクエリは集計が必須となります。投影ポリシーでは、SQL クエリ結果の出力に列を表示できるかどうかを定義します。
それぞれ詳細は以下をご参照ください。
Behavior Change Log
2024_04 バンドルが提供開始 ※デフォルトは無効化
8.17(2024/4/30 - 2024/5/7 リリース)で、2024_04 バンドルが提供開始となりました。先に挙動を確かめたい場合には手動でバンドルを有効化してテスト可能です。
このバンドルは、2024年6月のリリースでデフォルトで有効化される予定となっています。
2024_03 バンドルがデフォルトで有効化
8.17(2024/4/30 - 2024/5/7 リリース)で、2024_03 バンドルがデフォルトで有効化されました。このバンドルは、2024年6月のリリースで一般的に有効化される予定となっています。
2024_02 バンドルが一般的に有効化
8.17(2024/4/30 - 2024/5/7 リリース)で、2024_02 バンドルが一般的に有効化されました。
おまけ:Modern Data Stack全般の最新情報
Snowflakeも含め、Modern Data Stack 全般の最新情報についても、定期的にブログにまとめて投稿されております!こちらもぜひご覧ください。